//
//  UIView+ABCDynamic.h
//  ABCAppearanceKit_Example
//
//  Created by mac on 2022/9/1.
//  Copyright © 2022 Joe. All rights reserved.
//

#import <UIKit/UIKit.h>
#import "ABCDynamicManager.h"
#import "ABCDynamicUpdater.h"

NS_ASSUME_NONNULL_BEGIN

/**
 模式更新回调
 */
typedef void(^ABCUpdateDynamicBlock)(ABCAppearanceDynamicStyle dynamicStyle);

@interface NSObject (ABCDynamic)

@property (nonatomic, copy, readonly) NSArray<ABCUpdateDynamicBlock> *updateDynamicList;

/**
 绑定模式更新的回调
 */
- (void)abc_bindDynamicUpdate:(ABCUpdateDynamicBlock)updateDynamic;

/**
 解绑模式更新的指定回调
 */
- (void)abc_unBindDynamicUpdate:(ABCUpdateDynamicBlock)updateDynamic;

/**
 解绑当前对象下的所有回调
 */
- (void)abc_unBindAllDynamicUpdate;

@end

NS_ASSUME_NONNULL_END
